import sys

PI = 3.14


def main():
    print('PI is:', PI)


if __name__ == '__main__':
    main()
# 由此我们可知：如果一个 .py 文件（模块）被直接运行时，其 __name__ 值为 __main__ ，即模块名为 __main__ 。
# 所以， if __name__ == '__main__' 的意思是：当 .py 文件被直接运行时， if __name__ == '__main__' 之下的代
# 码块将被运行；当 .py 文件以模块形式被导入时， if __name__ == '__main__' 之下的代码块不被运行。
print('__name__', __name__)

print(sys.path)

print(type(sys.path))
# ['D:\\1-python-learning\\python-learning\\11.模块', 'D:\\1-python-learning\\python-learning', ........]

"""
这就涉及到 Python 的搜索路径，搜索路径是由一系列目录名组成的，Python 解释器就依次从这些目录中去寻找所引入的
模块。
这看起来很像环境变量，事实上，也可以通过定义环境变量的方式来确定搜索路径。
搜索路径是在 Python 编译或安装的时候确定的，安装新的库应该也会修改。搜索路径被存储在 sys 模块中的 path 变
量中。
"""

"""
package
包是一种管理 Python 模块命名空间的形式，采用"点模块名称"。

创建包分为三个步骤：
1. 创建一个文件夹，用于存放相关的模块，文件夹的名字即包的名字。
2. 在文件夹中创建一个 __init__.py 的模块文件，内容可以为空。
3. 将相关的模块放入文件夹中。

"""
